Einleitung ========== .. index:: NFC Sound Box Die Konstruktion einer NFC-fähigen Musikbox auf Basis eines Raspberry Pi und des PN532 NFC-Moduls ist ein innovatives Projekt, das moderne Technologien miteinander verknüpft. Ziel dieses Projekts ist es, eine Musikbox zu entwickeln, die es ermöglicht, Musik durch das Scannen von NFC-Tags abzuspielen. Eine der zentralen Komponenten dieses Projekts ist der I2C-Kommunikationsstandard, der es ermöglicht, digitale Signale zwischen dem Raspberry Pi und dem PN532 NFC-Modul effizient zu übertragen. I2C ist ein bewährtes Kommunikationsprotokoll, das nur zwei Leitungen benötigt – eine für Daten (SDA) und eine für den Takt (SCL) – und somit ideal für kompakte Systeme ist. Die Programmierung der Steuerungssoftware erfolgt in der modernen Programmiersprache Golang (Go). Go zeichnet sich durch seine einfache Syntax, effiziente Kompilierung und starke Typisierung aus, was die Entwicklung von performanten und zuverlässigen Anwendungen erleichtert. Besonders hervorzuheben sind die Go Routines und Channels, die eine einfache und effiziente Parallelisierung von Aufgaben ermöglichen. Um die NFC-Funktionalität zu integrieren, nutzen wir die Libnfc-Bibliothek in Go, die mittels cgo an Go angebunden wird. Dies ermöglicht eine direkte Nutzung der in C geschriebenen Libnfc-Funktionen innerhalb unseres Go-Codes, wodurch eine nahtlose Kommunikation mit dem NFC-Modul gewährleistet wird. Aufgabenstellung ---------------- Hardware-Integration: Einrichtung eines Raspberry Pi als Steuergerät und Anbindung des PN532 NFC-Moduls über den I2C-Bus. Software-Entwicklung: Programmierung der Steuerungssoftware in Golang, inklusive NFC-Lese-Funktion mit Libnfc und CLI-Entwicklung mit urfave/cli. Datenbank-Anbindung: Einrichtung einer PostgreSQL-Datenbank zur Speicherung der Musiktitel und Implementierung der Schnittstelle über den Go-Treiber lib/pq. Systemintegration und Tests: Zusammenführung aller Komponenten zu einem funktionierenden Gesamtsystem und Durchführung von Tests zur Sicherstellung der zuverlässigen NFC-Kommunikation und Musikwiedergabe.